﻿/*
 * Created by SharpDevelop.
 * User: CeCi
 * Date: 29/03/2014
 * Time: 07:38 p.m.
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Data;
using System.Collections.Generic;
using Gestión_UTN.bo;

namespace Gestión_UTN.blimpl
{
	/// <summary>
	/// Description of telefonoAlumnoblimpl.
	/// </summary>
	public class telefonoAlumnoblimpl:Gestión_UTN.bl.telefonoAlumnobl
	{
		private static Gestión_UTN.da.telefonoAlumnoda createTelAlum = Gestión_UTN.factories.dafactory.createTelAlum();
		
		public telefonoAlumnoblimpl()
		{
		}
		
		public bool SaveTelefonoAlumno(int alu_dni, int numero)
		{
			bool ingresado = false;
			
			try 
			{
				ingresado = (0 != alu_dni && 0 != numero) ? createTelAlum.SaveTelefonoAlumno(alu_dni,numero) : false;
			} 
			catch (Exception) {
				
				ingresado = false;
			}
			
			return ingresado;
		}
		
		public bool DeleteTelefonoAlumno(int alu_dni, int numero)
		{
			bool eliminado = false;
			
			try 
			{
				eliminado = (0 != alu_dni && 0 != numero) ? createTelAlum.DeleteTelefonoAlumno(alu_dni,numero)
					: false;
			} 
			catch (Exception) 
			{
				
				eliminado = false;
			}
			
			return eliminado;
		}
		
		public bool ModifyTelefonoAlumno(int alu_dni_anterior, int numero_anterior, int alu_dni, int numero)
		{
			bool modificado = false;
			
			try 
			{
				modificado = (0 != alu_dni_anterior && 0 != numero_anterior
				              && 0 != alu_dni && 0 != numero) ?
					createTelAlum.ModifyTelefonoAlumno(alu_dni_anterior, numero_anterior, alu_dni, numero):
					false;
			} 
			catch (Exception) 
			{
				
				modificado = false;
			}
			
			return modificado;
		}
		
		public System.Data.DataTable FindAllTelefonoAlumnos()
		{
			DataTable tablaTelAlum = null;
			
			try 
			{
				tablaTelAlum = createTelAlum.FindAllTelefonoAlumnos();
			} 
			catch (Exception) 
			{
				
				tablaTelAlum = null;
			}
			
			return tablaTelAlum;
		}
		
		public Gestión_UTN.bo.TelefonoAlumnobo FindTelefonoByDni(int alu_dni)
		{
			TelefonoAlumnobo telefonos = null;
			
			try 
			{
				List<Gestión_UTN.Entities.TelefonoAlumno> tels = (0 != alu_dni)
					? createTelAlum.FindTelefonoByDni(alu_dni) : null;
				
				if (null != telefonos)
				{
					List<int> numeros = new List<int>();
					
					foreach (Gestión_UTN.Entities.TelefonoAlumno tel in tels) 
					{
						numeros.Add(tel.Numero);
					}

					telefonos = new TelefonoAlumnobo(alu_dni,numeros);
				}
			} 
			catch (Exception) 
			{
				
				telefonos = null;
			}
			
			return telefonos;
		}
	}
}
